package com.study.config;

import com.alibaba.cloud.sentinel.annotation.SentinelRestTemplate;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;

/**
 * 开启服务间的调用保护、需要给RestTemplate包装
 */
@Slf4j
@Configuration
public class SentinelConfig {

    /**
     * @SentinelRestTemplate 是增强的restTemplate
     * 没有@SentinelRestTemplate是普通的restTemplate
     */
    @Bean
//    @SentinelRestTemplate(
//            fallback = "handlerFallback",
//            fallbackClass = RestTemplateExceptionUtil.class,
//            blockHandler = "handlerBlock",
//            blockHandlerClass = RestTemplateExceptionUtil.class
//    )
    public RestTemplate restTemplate(){
        return new RestTemplate();//可以对其做一些业务相关的配置
    }
}
